//
//  NSString+Number.m
//  SleepingElf
//
//  Created by karong on 2023/6/20.

#import <UIKit/UIKit.h>

@interface UIScrollView (ScrollMethod)

/** 返回UIScrollView內容外的区域，在iOS11以后需要用到adjustedContentInset，而在iOS11以前只需要用contentInset */
@property (nonatomic, readonly) UIEdgeInsets wc_contentInset;

/** 判断是否已经处於顶部(当UIScrollView內容不够多不可滚動時，也認為是在顶部) */
@property (nonatomic, readonly) BOOL wc_alreadyAtTop;

/** 判断是否已经处於底部(当UIScrollView內容不够多不可滚動時，也認為是在底部) */
@property (nonatomic, readonly) BOOL wc_alreadyAtBottom;

/** 判断scrollView內容是否足够滚動 */
@property (nonatomic, readonly) BOOL wc_canScroll;

/** 滚動到顶部 */
- (void)wc_scrollToTopAnimated:(BOOL)animated;

/** 滚動到顶部，并带動画 */
- (void)wc_scrollToTop;

/** 滚動到底部 */
- (void)wc_scrollToBottemAnimated:(BOOL)animated;

/** 滚動到底部，并带動画 */
- (void)wc_scrollToBottem;

/** 滚動到左部 */
- (void)wc_scrollToLeftAnimated:(BOOL)animated;

/** 滚動到左部，并带動画 */
- (void)wc_scrollToLeft;

/** 滚動到右部 */
- (void)wc_scrollToRightAnimated:(BOOL)animated;

/** 滚動到右部，并带動画 */
- (void)wc_scrollToRight;

/** 立即停止滚動，用於那种手指已经离开屏幕但列表还在滚動的情况 */
- (void)wc_stopDeceleratingIfNeeded;

@end

